package com.ruoyi.recycle.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.recycle.domain.ShopManagement;
import com.ruoyi.recycle.dto.ShopLabelsDTO;

import java.util.List;

/**
 * 引流门店管理Service接口
 *
 * @author Wubk
 * @date 2022-05-21
 */
public interface IShopManagementService extends IService<ShopManagement> {
    /**
     * 查询引流门店管理
     *
     * @param id 引流门店管理主键
     * @return 引流门店管理
     */
    public ShopManagement selectShopManagementById(Long id);

    /**
     * 查询引流门店管理列表
     *
     * @param shopManagement 引流门店管理
     * @return 引流门店管理集合
     */
    public List<ShopManagement> selectShopManagementList(ShopManagement shopManagement);

    /**
     * 新增引流门店管理
     *
     * @param shopManagement 引流门店管理
     * @return 结果
     */
    public int insertShopManagement(ShopManagement shopManagement);

    /**
     * 修改引流门店管理
     *
     * @param shopManagement 引流门店管理
     * @return 结果
     */
    public int updateShopManagement(ShopManagement shopManagement);

    /**
     * 批量删除引流门店管理
     *
     * @param ids 需要删除的引流门店管理主键集合
     * @return 结果
     */
    public int deleteShopManagementByIds(Long[] ids);

    /**
     * 删除引流门店管理信息
     *
     * @param id 引流门店管理主键
     * @return 结果
     */
    public int deleteShopManagementById(Long id);

    AjaxResult nearbyShopRecommend(Double dis, Double longitude, Double latitude,Long clientId);

    AjaxResult nearbyShopRecommend(Double dis, Double longitude, Double latitude, String name,Long clientId,String type);

    void addLabels(ShopLabelsDTO labels);


    AjaxResult collectShopPageQuery(Long clientId, Integer currentPage, Integer pageSize);

    AjaxResult changeStatus(Long id, String status);

    AjaxResult selectByClientIdAndShopIdGetShopDetail(Long shopId, Long clientId,Double longitude,Double latitude);

}
